#include <stdio.h>
#include <stdlib.h>

int main(int argc, char **argv)
{
    FILE *fin = NULL, *fout = NULL;
    char infile[256] = {0}, outfile[256] = {0};
    printf("请输入输入文件名：");
    scanf("%s", infile);
    printf("请输入输出文件名：");
    scanf("%s", outfile);
    // 程序要点1：打开文件
    fin = fopen(infile, "r");
    fout = fopen(outfile, "w");
    if (fin == NULL || fout == NULL)
    {
        printf("无法打开文件%s或%s\n", infile, outfile);
        // 如果出现问题，将main函数返回值设为非0
        return 1; 
    }
    // 程序要点2：使用循环读取文件中的所有字符
    while (!feof(fin)) {
         // 用feof判断文件是否已经到最后
        char ch = fgetc(fin);
        if (ch == EOF)
            break; // 如果读出EOF可以直接结束循环
        // 将读入的字符写入另一个文件
        fputc(ch, fout);
    }
    // 程序要点3：关闭文件
    fclose(fin);
    fclose(fout);
    printf("文件拷贝完成\n");
    return 0;
}
